package org.farng.mp3.id3;

import org.farng.mp3.InvalidTagException;
import org.farng.mp3.object.ObjectStringSizeTerminated;


/**
 * Title: Description: Copyright:    Copyright (c) 2002 Company:
 *
 * @author Eric Farng
 * @version $Revision: 1.3 $
 */
public abstract class AbstractFrameBodyUrlLink extends AbstractID3v2FrameBody {
    /**
     * Creates a new FrameBodyUrlLink object.
     */
    public AbstractFrameBodyUrlLink() {
        //        setObject("URL Link", "");
    }

    public AbstractFrameBodyUrlLink(AbstractFrameBodyUrlLink body) {
        super(body);
    }

    /**
     * Creates a new FrameBodyUrlLink object.
     *
     * @param urlLink DOCUMENT ME!
     */
    public AbstractFrameBodyUrlLink(String urlLink) {
        setObject("URL Link", urlLink);
    }

    /**
     * Creates a new FrameBodyUrlLink object.
     *
     * @param file DOCUMENT ME!
     *
     * @throws java.io.IOException DOCUMENT ME!
     * @throws InvalidTagException DOCUMENT ME!
     */
    public AbstractFrameBodyUrlLink(java.io.RandomAccessFile file)
                             throws java.io.IOException, InvalidTagException {
        this.read(file);
    }

    /**
     * DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     */
    public String getBriefDescription() {
        return this.getUrlLink();
    }

    /**
     * DOCUMENT ME!
     *
     * @param urlLink DOCUMENT ME!
     */
    public void setUrlLink(String urlLink) {
        setObject("URL Link", urlLink);
    }

    /**
     * DOCUMENT ME!
     *
     * @return DOCUMENT ME!
     */
    public String getUrlLink() {
        return (String) getObject("URL Link");
    }

    /**
     * DOCUMENT ME!
     */
    protected void setupObjectList() {
        objectList.add(new ObjectStringSizeTerminated("URL Link"));
    }
}